package com.scut.miaosha.Result;

public class CodeMsg {
    private int code;
    private String msg;

    private CodeMsg(int code , String msg){
        this.code = code;
        this.msg = msg;
    }

    //通用异常
    public static CodeMsg SUCCESS = new CodeMsg(0,"success");
    public static CodeMsg SERVER_ERROR = new CodeMsg(500100,"服务端异常");
    public static CodeMsg BIND_ERROR = new CodeMsg(500101,"参数校验异常：%s");
    public static CodeMsg SYSTEM_ERROR = new CodeMsg(500102,"系统异常");
    public static CodeMsg REQUEST_ILLGAL = new CodeMsg(500103,"请求地址非法");
    public static CodeMsg ACCESS_LIMIT_REACH = new CodeMsg(500104,"访问太频繁");
    //登陆模块5002XX
    public static CodeMsg SESSION_ERROR = new CodeMsg(500210,"Session不存在或者已经失效");
    public static CodeMsg PASSWORD_EMPTY = new CodeMsg(500211,"登陆密码不能为空");
    public static CodeMsg MOBILE_EMPTY = new CodeMsg(500212,"手机号不能为空");
    public static CodeMsg MOBILE_ERROR = new CodeMsg(500213,"手机号错误");
    public static CodeMsg MOBILE_NOT_EXIST = new CodeMsg(500214,"手机不存在");
    public static CodeMsg PASSWORD_ERROR = new CodeMsg(500215,"密码错误");
    //商品模块5003XX

    //订单模块5004XX
    public static CodeMsg ORDER_NOY_EXIST = new CodeMsg(500400,"订单不存在");
    //秒杀模块5005XX
    public static CodeMsg MIAO_SHA_OVER = new CodeMsg(500500,"商品已经秒杀结束");
    public static CodeMsg REPEATE_MIAOSHA = new CodeMsg(500501,"不能重复秒杀");
    public static CodeMsg MIAOSHA_FAIL = new CodeMsg(500502,"秒杀失败");


    public CodeMsg fillArgs(Object...args){
        int code = this.code;
        String message = String.format(this.msg,args);
        return new CodeMsg(code,message);
    }


    public int getCode() {
        return code;
    }


    public String getMsg() {
        return msg;
    }

    @Override
    public String toString()
    {
        return "CodeMsg[code="+code+",msg"+msg+"]";
    }
}
